package org.beanscreator.definitionreader;

import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

public class ClassDefinition {

    private String id;
    private String fullClassName;
    private List<Object> constructorArgs = new LinkedList<>();
    private Map<String, Object> paramsValues = new HashMap<>();

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getFullClassName() {
        return fullClassName;
    }

    public void setFullClassName(String fullClassName) {
        this.fullClassName = fullClassName;
    }

    public void addConstructorArgVal(String val) {
        constructorArgs.add(val);
    }

    public void addParamValue(String paramName, Object val) {
        paramsValues.put(paramName, val);
    }

    public List<Object> getConstructorArgs() {
        return constructorArgs;
    }

    public Map<String, Object> getParamsValues() {
        return paramsValues;
    }

    @Override
    public String toString() {
        return "ClassDefinition{" +
                "id='" + id + '\'' +
                ", fullClassName='" + fullClassName + '\'' +
                ", constructorArgs=" + constructorArgs +
                ", paramsValues=" + paramsValues +
                '}';
    }
}
